package com.gitee.huxing.course.order.service;

import com.baomidou.mybatisplus.extension.api.R;
import com.baomidou.mybatisplus.extension.service.IService;
import com.gitee.huxing.course.order.domain.module.PlatFormOrderDO;

/**
 * @Description: 平台订单服务
 * @ProjectName: JavaCourse
 * @Package: com.gitee.huxing.course.service
 * @ClassName: PlatFormOrderService
 * @Author: huxing
 * @DateTime: 2021-09-17 下午5:35
 */
public interface PlatFormOrderService extends IService<PlatFormOrderDO> {

    /**
     * @Description: 采购商品
     * @Author: huxing
     * @param
     * @Date: 2021/9/17 下午5:36
     **/
    PlatFormOrderDO purchase() throws RuntimeException;

    /**
     * @Description: 批量采购商品
     * @Author: huxing
     * @param
     * @Date: 2021/9/17 下午5:36
     **/
    void batchPurchase() throws RuntimeException;


    /**
     * @Description:   根据订单查询订单记录
     * @Author: huxing
     * @param orderId  订单编号
     * @Date: 2021/9/19 下午9:19
     **/
    PlatFormOrderDO queryOrder(String orderId) throws RuntimeException;

    /**
     * @Description: 修改订单记录
     * @Author: huxing
     * @param orderId 订单记录编号
     * @return com.gitee.huxing.course.order.domain.module.PlatFormOrderDO
     * @Date: 2021/9/24 下午3:22
     **/
    PlatFormOrderDO updateOrder(String orderId) throws RuntimeException;

    /**
     * @Description: 删除订单记录
     * @Author: huxing
     * @param orderId
     * @return com.gitee.huxing.course.order.domain.module.PlatFormOrderDO
     * @Date: 2021/9/24 下午3:22
     **/
    void deleteOrder(String orderId) throws RuntimeException;


    /**
     * @Description: 批量事务处理测试
     * @Author: huxing
     * @param 页码
     * @Date: 2021/9/25 下午8:51
     **/
    void batchPurchaseTrans(Integer page) throws RuntimeException;
}
